update alignment padding after theme changes. (Fixes #467003, patch by
authorKristian Rietveld <kris@imendio.com>
Tue, 21 Aug 2007 13:13:42 +0000 (13:13 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Tue, 21 Aug 2007 13:13:42 +0000 (13:13 +0000)
2007-08-21  Kristian Rietveld  <kris@imendio.com>

* gtk/gtktooltip.c (gtk_tooltip_init),
(gtk_tooltip_window_style_set): update alignment padding after
theme changes. (Fixes #467003, patch by Benjamin Berg).

svn path=/trunk/; revision=18667

ChangeLog
gtk/gtktooltip.c

index 9ac9d8d71c56d4eaa7d8ae2bb4f0c51ea92d0ee0..39fb3399ff75f07641dec12da1e9387b49017cbf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-08-21  Kristian Rietveld  <kris@imendio.com>
+
+       * gtk/gtktooltip.c (gtk_tooltip_init),
+       (gtk_tooltip_window_style_set): update alignment padding after
+       theme changes. (Fixes #467003, patch by Benjamin Berg).
+
 2007-08-21  Kristian Rietveld  <kris@imendio.com>
 
        * gtk/gtktooltip.c (_gtk_tooltip_handle_event): always set
index 25dc578ebe245f4727482235203f2f06b6cc413f..8e17ce2f7a2376c0d09c3691e072677faf0d724b 100644 (file)
@@ -85,6 +85,7 @@ static void       gtk_tooltip_class_init           (GtkTooltipClass *klass);
 static void       gtk_tooltip_init                 (GtkTooltip      *tooltip);
 static void       gtk_tooltip_finalize             (GObject         *object);
 
+static void       gtk_tooltip_window_style_set     (GtkTooltip      *tooltip);
 static gboolean   gtk_tooltip_paint_window         (GtkTooltip      *tooltip);
 static void       gtk_tooltip_window_hide          (GtkWidget       *widget,
                                                    gpointer         user_data);
@@ -140,6 +141,8 @@ gtk_tooltip_init (GtkTooltip *tooltip)
   gtk_container_add (GTK_CONTAINER (tooltip->window), tooltip->alignment);
   gtk_widget_show (tooltip->alignment);
 
+  g_signal_connect_swapped (tooltip->window, "style_set",
+                           G_CALLBACK (gtk_tooltip_window_style_set), tooltip);
   g_signal_connect_swapped (tooltip->window, "expose_event",
                            G_CALLBACK (gtk_tooltip_paint_window), tooltip);
 
@@ -410,6 +413,18 @@ gtk_tooltip_reset (GtkTooltip *tooltip)
   gtk_tooltip_set_tip_area (tooltip, NULL);
 }
 
+static void
+gtk_tooltip_window_style_set (GtkTooltip *tooltip)
+{
+  gtk_alignment_set_padding (GTK_ALIGNMENT (tooltip->alignment),
+                            tooltip->window->style->ythickness,
+                            tooltip->window->style->ythickness,
+                            tooltip->window->style->xthickness,
+                            tooltip->window->style->xthickness);
+
+  gtk_widget_queue_draw (tooltip->window);
+}
+
 static gboolean
 gtk_tooltip_paint_window (GtkTooltip *tooltip)
 {